/*
 * comp.h
 *
 *  Created on: 2010.06.26
 *      Author: Tadas
 */

#ifndef COMP_H_
#define COMP_H_

#include <stdio.h>
#include <iostream>
#include <ostream>
#include <cmath>
#include <conio.h>

using namespace std;

class komp
{

	public:
		komp(double rea, double ima);
		komp();
		komp(const komp &c);

		friend komp operator +(komp, komp);  
		friend komp operator -(komp, komp);
		friend komp operator *(komp, komp);
		friend komp operator *(komp, double);
		friend komp operator *(double, komp);
		friend komp operator /(komp, komp);
		friend komp operator +(komp, double);
		friend komp operator -(komp, double);
		friend komp operator +(double, komp);
		friend komp operator -(double, komp);
		friend ostream &operator<<(ostream &output, komp c);
		double abs();
		double mod();
		komp sqr();
		void set(double r, double i);
		void set(komp c);
		komp power(komp);
		komp &operator =(double r);
//		void operator =(komp);               //= operatorius member funkcija


		void out(char *);

	private:
		double re, im;
};


/*void komp::operator =(komp c) //priskyrimo operatorius
{
	if ((im == c.im) && (re == c.re)) return;

	im = c.im;
	re = c.re;
}*/



#endif /* COMP_H_ */
